The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

The ongoing story of seconds on the taskbar
Apr 21, 2025
Post comments count 4
Post likes count 0

The ongoing story of seconds on the taskbar

Raymond Chen
Raymond Chen

The cost of ticking.

The case of the feature flag that didn’t stay on long enough, part 2
Apr 18, 2025
Post comments count 1
Post likes count 0

The case of the feature flag that didn’t stay on long enough, part 2

Raymond Chen
Raymond Chen

Leaving everything the way you found it.

The case of the feature flag that didn’t stay on long enough, part 1
Apr 17, 2025
Post comments count 3
Post likes count 1

The case of the feature flag that didn’t stay on long enough, part 1

Raymond Chen
Raymond Chen

Understanding scope and order of destruction.

Using the classical model for linking to provide unit test overrides
Apr 16, 2025
Post comments count 0
Post likes count 1

Using the classical model for linking to provide unit test overrides

Raymond Chen
Raymond Chen

Overriding a LIB with an OBJ for fun and profit.

There was a lot of imagined dropping tablets in swimming pools
Apr 15, 2025
Post comments count 16
Post likes count 1

There was a lot of imagined dropping tablets in swimming pools

Raymond Chen
Raymond Chen

The archetypical example of needing a replacement computer.

Dubious security vulnerability: Once I have tricked the user into running a malicious shortcut, I can install malware
Apr 14, 2025
Post comments count 5
Post likes count 0

Dubious security vulnerability: Once I have tricked the user into running a malicious shortcut, I can install malware

Raymond Chen
Raymond Chen

Yes, that's sort of the point.

The case of the UI thread that hung in a kernel call
Apr 11, 2025
Post comments count 12
Post likes count 5

The case of the UI thread that hung in a kernel call

Raymond Chen
Raymond Chen

I did tell you not to do that.

Function overloading is more flexible (and more convenient) than template function specialization
Apr 10, 2025
Post comments count 0
Post likes count 1

Function overloading is more flexible (and more convenient) than template function specialization

Raymond Chen
Raymond Chen

You can change more things in an overload.

Why can’t I use <CODE>SEC_<WBR>LARGE_<WBR>PAGES</CODE> with a file-based file mapping?
Apr 9, 2025
Post comments count 5
Post likes count 0

Why can’t I use SEC_LARGE_PAGES with a file-based file mapping?

Raymond Chen
Raymond Chen

No paging, no crying.